<?php
require_once('include/config.php');
require_once '../include/config.php';
$msg = $msgImage = $msgTitre = $msgDateDeb = $msgDateFin = $msgText = $titre = $datedeb = $datefin = $texte = $lienImage = $wh = '';

//Si on arrive sur cette page pour modifier
if (isset($_GET['id'])) {
    $id = htmlentities($_GET['id'], ENT_QUOTES);

    //Dans le cas où l'on vient de supprimer l'image correspondante
    if (isset($_GET['supp'])) {
        $sql = 'UPDATE `promotion` SET `img`=\'\',`imgWH`=\'\' WHERE `idpromotion`=' . $id;
        $result = @mysql_query($sql);
        if ($result) {
            if (unlink('../' . htmlentities($_GET['supp']))) {
                $msg = '<p class="msg done">L\'image est bien supprimée</p>';
            } else {
                $msg = '<p class="msg done">L\'image est bien supprimée en base mais pas sur le serveur</p>';
            }
        } else {
            $msg = '<p class="msg done">L\'image n\'est pas supprimée</p>';
        }
    }

    $sql = 'SELECT * FROM `promotion` WHERE `idpromotion`=' . $id;
    $result = @mysql_query($sql);
    $nbr_actu = @mysql_num_rows($result);
    if ($nbr_actu > 0) {
        $data = @mysql_fetch_array($result);
        $titre = $data['titre'];
        $datedeb = strftime('%d-%m-%Y', strtotime($data['deb']));
        $datefin = strftime('%d-%m-%Y', strtotime($data['fin']));
        $texte = $data['texte'];
        $img = $data['img'];
        $wh = $data['imgWH'];
        $whThumb = $data['imgWHthumb'];
    }
}

if (!empty($_POST['Envoyer'])) {
    //on récupère les variables
    $titre = $_POST['titre'];
    $datedeb = $_POST['datedeb'];
    $datefin = $_POST['datefin'];
    $texte = $_POST['description'];

    //on vérifie que les champs obligatoires sont présent
    if (!empty($titre) && (!empty($datedeb)) && (!empty($datefin)) && (!empty($texte))) {
        $datedeb = strftime('%Y-%m-%d', strtotime($datedeb));
        $datefin = strftime('%Y-%m-%d', strtotime($datefin));
        
        $date1 = new DateTime($datedeb);
        $date2 = new DateTime($datefin);

        //on vérifie que la date de début est cohérante avec la date de fin
        if ($date1 > $date2) {
            //Sinon on interverti
            $dateTmp = $datedeb;
            $datedeb = $datefin;
            $datefin = $dateTmp;
        }

        //on vérifie qu'on upload une image
        if ($_FILES['image']['error'] <= 0) {
            if ($_FILES['image']['size'] <= 2097152) {
                $image = caractereValideUrl($_FILES['image']['name']);
                $ExtensionPresumee = strtolower(substr($image, -3));

                if ($ExtensionPresumee == 'jpg' || $ExtensionPresumee == 'peg' || $ExtensionPresumee == 'gif' || $ExtensionPresumee == 'png') {
                    $image = getimagesize($_FILES['image']['tmp_name']);

                    //Définition des type mime
                    $ListeExtension = array(
                        'png' => 'image/png',
                        'jpe' => 'image/jpeg',
                        'jpeg' => 'image/jpeg',
                        'jpg' => 'image/jpeg',
                        'gif' => 'image/gif'
                    );
                    $ListeExtensionIE = array('jpg' => 'image/pjpeg', 'jpeg' => 'image/pjpeg');

                    if ($image['mime'] == $ListeExtension[$ExtensionPresumee] || $image['mime'] == $ListeExtensionIE[$ExtensionPresumee]) {
                        switch ($ExtensionPresumee) {
                            case "jpeg":
                            case "pjpeg":
                            case "jpg":
                            case "peg": //pour le cas où l'extension est "jpeg"
                                $ImageChoisie = imagecreatefromjpeg($_FILES['image']['tmp_name']);
                                break;

                            case "gif":
                                $ImageChoisie = imagecreatefromgif($_FILES['image']['tmp_name']);
                                break;

                            case "png":
                                $ImageChoisie = imagecreatefrompng($_FILES['image']['tmp_name']);
                                break;
                        }

                        $TailleImageChoisie = getimagesize($_FILES['image']['tmp_name']);

                        $miniature = 240;
                        $miniature2 = 190;
                        //On vérifie que la photo envoyé est plus grande que les dimension mnnimale
                        if (($TailleImageChoisie[0] > $miniature2) || ($TailleImageChoisie[1] > $miniature2)) {
                            //Gestion paysage et portrait
                            if ($TailleImageChoisie[0] > $TailleImageChoisie[1]) {
                                //payasage
                                $NouvelleLargeur = $miniature;
                                $NouvelleHauteur = round(( ($TailleImageChoisie[1] * (($NouvelleLargeur) / $TailleImageChoisie[0]))));
                                //payasage
                                $NouvelleLargeur2 = $miniature2;
                                $NouvelleHauteur2 = round(( ($TailleImageChoisie[1] * (($NouvelleLargeur2) / $TailleImageChoisie[0]))));
                            } else {
                                //portrait
                                $NouvelleHauteur = $miniature;
                                $NouvelleLargeur = round(( ($TailleImageChoisie[0] * (($NouvelleHauteur) / $TailleImageChoisie[1]))));
                                //portrait
                                $NouvelleHauteur2 = $miniature2;
                                $NouvelleLargeur2 = round(( ($TailleImageChoisie[0] * (($NouvelleHauteur2) / $TailleImageChoisie[1]))));
                            }
                        } else {
                            $NouvelleLargeur = $NouvelleLargeur2 = $TailleImageChoisie[0];
                            $NouvelleHauteur = $NouvelleHauteur2 = $TailleImageChoisie[1];
                        }

                        //Création nouvelle image
                        $NouvelleImage = imagecreatetruecolor($NouvelleLargeur, $NouvelleHauteur) or die("Erreur");
                        imagecopyresampled($NouvelleImage, $ImageChoisie, 0, 0, 0, 0, $NouvelleLargeur, $NouvelleHauteur, $TailleImageChoisie[0], $TailleImageChoisie[1]);

                        //Création nouvelle image thumb
                        $NouvelleImage2 = imagecreatetruecolor($NouvelleLargeur2, $NouvelleHauteur2) or die("Erreur");
                        imagecopyresampled($NouvelleImage2, $ImageChoisie, 0, 0, 0, 0, $NouvelleLargeur2, $NouvelleHauteur2, $TailleImageChoisie[0], $TailleImageChoisie[1]);

                        //Enregistrement de la miniature 1
                        imagejpeg($NouvelleImage, '../images/promotion/' . caractereValideUrl($titre) . '.' . $ExtensionPresumee, 100);

                        //Enregistrement de la miniature yhumb
                        imagejpeg($NouvelleImage2, '../images/promotion/' . caractereValideUrl($titre) . '-thumb.' . $ExtensionPresumee, 100);

                        //Enregistrement de l'image initiale
                        imagejpeg($ImageChoisie, '../images/promotion/' . caractereValideUrl($titre) . '-Full.' . $ExtensionPresumee, 100);
                        $lienImage = 'images/promotion/' . caractereValideUrl($titre) . '.' . $ExtensionPresumee;

                        //Pour la gestion de l'affichage
                        $wh = ' width="' . $NouvelleLargeur . '" height="' . $NouvelleHauteur . '"';
                        //Pour la gestion de l'affichage
                        $whThumb = ' width="' . $NouvelleLargeur2 . '" height="' . $NouvelleHauteur2 . '"';
                    } else {
                        $msgImage = '<p class="msg error">Le type MIME de l\'image n\'est pas bon</p>';
                    }
                } else {
                    $msgImage = '<p class="msg error">L\'extension choisie pour l\'image est incorrecte : ' . $ExtensionPresumee . '</p>';
                }
            } else {
                $msgImage = '<p class="msg error">L\'image est trop lourde</p>';
            }
        }

        //Gestion de l'intertion ou la modification
        if (!isset($id)) {
            //Dans le cas d'un intertion
            $sql = 'INSERT INTO `promotion` (`idpromotion`, `titre`, `texte`, `deb`, `fin`, `img`, `imgWH`, `imgWHthumb`) VALUES (NULL, "' . mysql_real_escape_string($titre) . '", "' . mysql_real_escape_string($texte) . '", "' . $datedeb . ' 00:00:00", "' . $datefin . ' 00:00:00", "' . $lienImage . '",\'' . $wh . '\',\'' . $whThumb . '\')';
        } else {
            //dans le cas où l'on modifie la photo
            if ($lienImage != '') {
                $img = $lienImage;
            }
            //dans le cas d'une modification
            $sql = 'UPDATE `promotion` SET `titre`=\'' . mysql_real_escape_string($titre) . '\', `texte`=\'' . mysql_real_escape_string($texte) . '\', `deb`=\'' . $datedeb . ' 00:00:00\', `fin`=\'' . $datefin . ' 00:00:00\', `img`=\'' . $img . '\', `imgWH`=\'' . $wh . '\', `imgWHthumb`=\'' . $whThumb . '\' WHERE `idpromotion`=' . $id;
        }

        @mysql_query("SET NAMES 'utf8'");
        $res = @mysql_query($sql) or die(mysql_error());
        if ($res) {
            if (!isset($id)) {
                $msg = '<p class="msg done">La poromotion a bien été insérée : </p>';
                $titre = $datedeb = $datefin = $texte = '';
            } else {
                $msg = '<p class="msg done">La promotion a bien été modifiée</p>';
                $datedeb = strftime('%d-%m-%Y', strtotime($datedeb));
                $datefin = strftime('%d-%m-%Y', strtotime($datefin));                
            }
        }
    } else {
        //gestion des erreurs approfondi
        $msgErr = '<p class="msg warning">Les champs muni d\'une astérisque sont obligatoire</p>';
        if (empty($_POST['titre'])) {
            $msgTitre = '<p class="msg error">Merci de renseigner un titre</p>';
        }
        if (empty($_POST['datedeb'])) {
            $msgDateDeb = '<p class="msg error">Merci de déterminer une date de début</p>';
        }
        if (empty($_POST['datefin'])) {
            $msgDateFin = '<p class="msg error">Merci de déterminer une date de fin</p>';
        }
        if (empty($_POST['description'])) {
            $msgText = '<p class="msg error">Merci de renseigner un texte</p>';
        }
    }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//FR" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
        <meta http-equiv="content-language" content="en" />
        <meta name="robots" content="noindex,nofollow" />
        <link rel="stylesheet" media="screen,projection" type="text/css" href="css/reset.css" /> <!-- RESET -->
        <link rel="stylesheet" media="screen,projection" type="text/css" href="css/main.css" /> <!-- MAIN STYLE SHEET -->
        <link rel="stylesheet" media="screen,projection" type="text/css" href="css/2col.css" title="2col" /> <!-- DEFAULT: 2 COLUMNS -->
        <link rel="alternate stylesheet" media="screen,projection" type="text/css" href="css/1col.css" title="1col" /> <!-- ALTERNATE: 1 COLUMN -->
        <!--[if lte IE 6]><link rel="stylesheet" media="screen,projection" type="text/css" href="css/main-ie6.css" /><![endif]--> <!-- MSIE6 -->
        <link rel="stylesheet" media="screen,projection" type="text/css" href="css/style.css" /> <!-- GRAPHIC THEME -->
        <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.0/themes/base/jquery-ui.css" />

        <title>Administration</title>
    </head>

    <body>
        <div id="main">
            <!-- Tray -->
            <div id="tray" class="box">
                <p class="f-left box">
                    <!-- Switcher -->
                    <span class="f-left" id="switcher">
                        <a href="#" rel="1col" class="styleswitch ico-col1" title="Enlever le menu gauche"><img src="design/switcher-1col.gif" alt="1 Column" /></a>
                        <a href="#" rel="2col" class="styleswitch ico-col2" title="Menu gauche"><img src="design/switcher-2col.gif" alt="2 Columns" /></a>
                    </span>
                    <strong><?php echo $nomProjet; ?></strong>
                </p>
                <p class="f-right"><a href="<?php echo $site; ?>" target="_blank" id="logout"><span><strong>Voir le site</strong></span></a>&nbsp;&nbsp;&nbsp;&nbsp;<strong><a href="logout.php" id="logout">Quitter l'administration</a></strong></p>
            </div> <!--  /tray -->
            <hr class="noscreen" />

            <!-- Columns -->
            <div id="cols" class="box">

                <!-- Aside (Left Column) -->
                <div id="aside" class="box">
                    <?php
                    require_once('include/menu-gauche.php');
                    ?>
                </div> <!-- /aside -->

                <hr class="noscreen" />

                <!-- Content (Right Column) -->
                <div id="content" class="box">
                    <?php
                    if (!isset($id)) {
                        echo '<h1>Ajouter une Promotion</h1>';
                    } else {
                        echo '<h1>Modifier une Promotion</h1>';
                    }
                    if ($msg != '')
                        echo $msg;

//gestion de l'url 
                    if (!isset($id)) {
                        $urlDestination = htmlentities($_SERVER['PHP_SELF']);
                    } else {
                        $urlDestination = htmlentities($_SERVER['PHP_SELF']) . '?id=' . $id;
                    }
                    ?>
                    <form action="<?php echo $urlDestination; ?>" method="post" enctype="multipart/form-data">
                        <fieldset>
                            <table class="nostyle" border="1">
                                <tr>
                                    <td style="width:90px;">Titre* :</td>
                                    <td>
                                        <input type="text" size="40" name="titre" class="input-text" value="<?php echo stripslashes($titre); ?>" />
                                        <?php
                                        if ($msgTitre != '')
                                            echo $msgTitre;
                                        ?>
                                    </td>
                                </tr>
                                <tr>
                                    <td>Date Début* :</td>
                                    <td>
                                        <input type="text" size="40" name="datedeb" class="input-text" id="deb" value="<?php echo $datedeb; ?>" />
                                        <?php
                                        if ($msgDateDeb != '')
                                            echo $msgDateDeb;
                                        ?>
                                    </td>
                                </tr>
                                <tr>
                                    <td>Date Fin* :</td>
                                    <td>
                                        <input type="text" size="40" name="datefin" class="input-text" id="fin"  value="<?php echo $datefin; ?>"/>
                                        <?php
                                        if ($msgDateFin != '')
                                            echo $msgDateFin;
                                        ?>
                                    </td>
                                </tr>
                                <tr>
                                    <td class="va-top">Image :</td>
                                    <td>
                                        <?php
                                        if ((isset($img)) && (!empty($img))) {
                                            echo '<img src="../' . $img . '" /><br /><a href="?id=' . $id . '&supp=' . $img . '">Supprimer l\'image</a><br />';
                                        }
                                        ?>
                                        <input type="file" size="40" name="image" class="input-text" />
                                        <?php
                                        if ($msgImage != '')
                                            echo $msgImage;
                                        ?>
                                    </td>
                                </tr>
                                <tr>
                                    <td class="va-top">Texte* :</td>
                                    <td>
                                        <textarea name="description" cols="75" rows="7"  class="input-text"><?php echo stripslashes($texte); ?></textarea>
                                        <?php
                                        if ($msgText != '')
                                            echo $msgText;
                                        ?>
                                    </td>
                                </tr>
                                <tr>
                                    <td colspan="2" class="t-right"><input type="submit" class="input-submit" name="Envoyer" value="Valider" /></td>
                                </tr>
                            </table>
                        </fieldset>
                    </form>
                </div> <!-- /content -->
            </div> <!-- /cols -->
            <?php
            require_once ('include/footer.php');
            ?>
        </div> <!-- /main -->
        <script type="text/javascript" src="js/jquery.js"></script>
        <script type="text/javascript" src="js/switcher.js"></script>
        <script type="text/javascript" src="js/toggle.js"></script>
        <script type="text/javascript" src="js/ui.core.js"></script>
        <script type="text/javascript" src="js/ui.tabs.js"></script>
        <script src="http://code.jquery.com/jquery-1.8.3.js"></script>
        <script src="http://code.jquery.com/ui/1.10.0/jquery-ui.js"></script>

        <script>
            $(function() {
                $("#deb").datepicker({
                    dayNamesMin: ["Di", "Lu", "Ma", "Me", "Je", "Ve", "Sa"],
                    dateFormat: "dd-mm-yy",
                    firstDay: 1,
                    monthNames: ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octrobre", "Novembre", "Décembre"],
                    nextText: "Suivant",
                    prevText: "Précédent",
                    buttonText: "Date de début",
                    showOn: "button",
                    buttonImage: "design/calendar_view_day.png",
                    buttonImageOnly: true
                });
                $("#fin").datepicker({
                    dayNamesMin: ["Di", "Lu", "Ma", "Me", "Je", "Ve", "Sa"],
                    dateFormat: "dd-mm-yy",
                    firstDay: 1,
                    monthNames: ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octrobre", "Novembre", "Décembre"],
                    nextText: "Suivant",
                    prevText: "Précédent",
                    buttonText: "Date de fin",
                    showOn: "button",
                    buttonImage: "design/calendar_view_day.png",
                    buttonImageOnly: true
                });
            });
        </script>
        <script type="text/javascript">
            $(document).ready(function() {
                $(".tabs > ul").tabs();
            });
        </script>

        <!-- TinyMCE -->
        <script type="text/javascript" src="js/tiny_mce/tiny_mce.js"></script>
        <script type="text/javascript">
            tinyMCE.init({
                mode: "textareas",
                theme: "simple"
            });
        </script>
        <!-- /TinyMCE -->
    </body>
</html>